package com.dynamicthreadpool.spi;

import com.dynamicthreadpool.spi.extension.SPI;
import java.util.concurrent.ThreadFactory;

/**
 * 线程工厂SPI接口，用于扩展线程池的线程工厂实现
 */
@SPI("named")
public interface DynamicThreadFactory extends java.util.concurrent.ThreadFactory {
    
    /**
     * 设置线程池名称
     * @param name 线程池名称
     * @return 当前线程工厂实例
     */
    DynamicThreadFactory setName(String name);
    
    /**
     * 设置是否为守护线程
     * @param daemon 是否为守护线程
     * @return 当前线程工厂实例
     */
    DynamicThreadFactory setDaemon(boolean daemon);
    
    /**
     * 获取线程工厂名称
     * @return 线程工厂名称
     */
    String getName();
}